Skip to contentSkip to conversation

'dotest' fails, patch(1) succeeds

DISCUSSION Jeff Garzik 2 participants 2 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

Trying to use git-tools' "dotest" script to merge an mbox into a kernel git repo failed, but patch(1) was OK with it:

[jgarzik@pretzel netdev-2.6]$ dotest /g/tmp/mbox

Applying 'e1000: fix spinlock bug'

fatal: corrupt patch at line 10 [jgarzik@pretzel netdev-2.6]$ patch -sp1 < /g/tmp/mbox [jgarzik@pretzel netdev-2.6]$

Ideas? Full data needed to reproduce is attached. .git/HEAD is a4936044001694f033fe4ea94d6034d51a6b465c.

Jeff

#1 lore raw
Quoted 9 lines · Jeff Garzik

Trying to use git-tools' "dotest" script to merge an mbox into a kernel git repo failed, but patch(1) was OK with it:

[jgarzik@pretzel netdev-2.6]$ dotest /g/tmp/mbox

Applying 'e1000: fix spinlock bug'

fatal: corrupt patch at line 10

You have a corrupt patch, and "git-apply" not only tells you so, it tells you _exactly_ where it is:

In particular, it has whitespace damage at line 10:

1 --- linux-2.6.12-clean/drivers/net/e1000/e1000_main.c 2005-06-17 12:48:29.000000000 -0700
2 +++ linux-2.6.12/drivers/net/e1000/e1000_main.c 2005-06-21 10:42:29.000000000 -0700
3 @@ -2307,6 +2307,7 @@ e1000_xmit_frame(struct sk_buff *skb, st

 4  	tso = e1000_tso(adapter, skb);
 5  	if (tso < 0) {
 6  		dev_kfree_skb_any(skb);

7 + spin_unlock_irqrestore(&adapter->tx_lock, flags);
8 return NETDEV_TX_OK;
9 }
10

And take a close look. That line should have _one_ space on it (the space that says "neither new nor old"), and it's totally empty (well, now in my email it has "10 " on it, of course ;)

Btw, you have another problem: you should add a "---" marker to before the patch header, otherwise your commit message will have the "diff -urpN" thing in it. To the "dotest" scripts, "---" is the thing that says "here ends the message and the patch begins".

(The line numbers from "git-apply" will also start at that --- point, so if you add a "---" just above the "diff" line, you'd get "line 12" being the corrupt one)

Linus