From: Mark Knecht on
On Tue, Aug 3, 2010 at 11:55 AM, Randy Dunlap <randy.dunlap(a)oracle.com> wrote:
> On Tue, 3 Aug 2010 11:47:25 -0700 Mark Knecht wrote:
>
>> On Tue, Aug 3, 2010 at 11:41 AM, Randy Dunlap <randy.dunlap(a)oracle.com> wrote:
>> > On Mon, 2 Aug 2010 15:07:11 -0700 Mark Knecht wrote:
>> >
>> >> On Thu, Jul 22, 2010 at 5:39 AM, Tejun Heo <tj(a)kernel.org> wrote:
>> >>
>> >> Hi Tejun,
>> >>    I'm finally home and trying to get back to this. I'm really a bad
>> >> programmer so I don't know what I've done wrong but it seems patch
>> >> isn't happy with me.
>> >>
>> >> c2stable linux # patch --dry-run -p1 <../ata_piix-sidpr-lock.patch
>> >> patching file drivers/ata/ata_piix.c
>> >> patch: **** malformed patch at line 13:
>> >
>> > Whenever the patch file was saved on this system, line 13 of it was
>> > split (probably by an email client).  Whenever I see this, I just
>> > join (merge) that line and the next one and try again... sometimes
>> > several lines are malformed and have to be fixed like this.
>> >
>>
>> Randy,
>>    Could very well be what happened. I added line 13 (the printk) by hand
>>
>> <SNIP - ORIGINAL PATCH FILE>
>> struct piix_host_priv {
>>        const int *map;
>>        u32 saved_iocfg;
>> +       spinlock_t sidpr_lock;  /* FIXME: remove once locking in EH is fixed */
>>         void __iomem *sidpr;
>> };
>>
>> <SNIP - MY CHANGE BY HAND>
>> struct piix_host_priv {
>>        const int *map;
>>        u32 saved_iocfg;
>> +       spinlock_t sidpr_lock;  /* FIXME: remove once locking in EH is fixed */
>> +       printk("MWK - ata_sidpr patch applied!\n");
>>        void __iomem *sidpr;
>> };
>>
>> Maybe I should have just put it on the same line as the previous
>> spinlock command?
>>
>> I'll play with it and see if I can get it working.
>
>
> Ah, so you added a line to a patch file.  That means that the patch
> block header must be changed from something like this:
>
> @@ -964,12 +968,15 @@
>
> to like this:
>
> @@ -964,12 +968,16 @@
>
> Any text following the second "@@" is just a comment so it does not matter.
>
> The ,12  ,15   ,16   are all line counts. The ",12" is the number of lines
> in the before version of the patch.  The ",15" or ",16" is the number of lines
> in the after version of the patch, so you would need to increase it by 1 if
> you added one line.   Or you can just put the printk on the same line as another
> part of the patch and it won't matter.  :)
>
>
> ---
> ~Randy
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>

Thanks Randy. This helped.

OK - so I'm going to hang fire on this problem right now. As part of
this process I've updated to a 2.6.35-gentoo kernel and I'm not seeing
the problem at all so far. I've booted about 25 times over the last 3
days - warm and cold boots mixed - and so far no failures. While I've
had times in the past where earlier kernels didn't exhibit the problem
for days I don't remember a time where I got this many good boots in a
row.

As my problem didn't seem to be exactly the same as Paul's, and since
Tejun expressed surprise that his fix for Paul's issue didn't fix
mine, maybe my problem is actually something different and (hopefully)
already fixed.

I'll continue to use the machine and watch for any failures. If I get
one I'll reengage the list and go into debug mode.

Cheers,
Mark
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/