[PATCH v1 2/3] drm/ci: check-patch: unshallow repository before fetching

Vignesh Raman vignesh.raman at collabora.com
Thu Apr 3 06:02:17 UTC 2025


Hi Daniel,

On 28/03/25 17:40, Vignesh Raman wrote:
> Hi Daniel,
> 
> On 28/03/25 17:05, Daniel Stone wrote:
>> Hi Vignesh,
>>
>> On Fri, 28 Mar 2025 at 11:03, Vignesh Raman 
>> <vignesh.raman at collabora.com> wrote:
>>> Ensure the repository is not shallow before fetching branches in
>>> check-patch job. This prevents issues where git merge-base fails
>>> due to incomplete history. Set the timeout of check-patch job to 1h.
>>
>> Ouch - an hour is pretty brutal. Is there a way to unshallow only back
>> to the merge base?
> 
> I set it to 1h, but the job is completed in ~15min for
> https://gitlab.freedesktop.org/vigneshraman/linux/-/merge_requests/18 
> which has 486 commits.
> 
> I will check if we can unshallow only up to the merge base.

I tried this and still checkpatch failed. Below is the sequence.

- GitLab starts with a shallow fetch (depth=10).
- Script fetches full commit history (--unshallow --filter=blob:none). 
We need this to calculate the merge-base commit.
- Calculates how much history to fetch using the merge-base commit.
- Refetch with depth (--depth=N) until the merge-base commit
- checkpatch.pl fails because the earlier blobless fetch (--unshallow 
--filter=blob:none) skipped file contents.

Please see the commit and pipeline,
https://gitlab.freedesktop.org/vigneshraman/linux/-/commit/40a3fc31c2405f90f3fc3177a575a66a10b33324
https://gitlab.freedesktop.org/vigneshraman/linux/-/jobs/73884148

Looks like the reliable solution is to fully unshallow the repository 
(without any --filter) and set a 30m timeout? Would this be acceptable?

Regards,
Vignesh

> 
> Regards,
> Vignesh
> 
>>
>> Cheers,
>> Daniel
> 



More information about the dri-devel mailing list