Messages in this thread | | | From | "Mingarelli, Thomas" <> | Subject | RE: [PATCH] hpwdt: clean up set_memory_x call for 32 bit | Date | Tue, 24 Jan 2012 21:05:53 +0000 |
| |
Yes I agree that Maxim's patch is correct. The original set_memory_x call for 64 bit was done correctly and the newer calls are wrong.
The 2 pages for the BIOS SD is a known value so it should be safe to use as is.
Tom -----Original Message----- From: Wim Van Sebroeck [mailto:wim@iguana.be] Sent: Tuesday, January 24, 2012 2:38 PM To: Linus Torvalds Cc: Maxim Uvarov; linux-kernel@vger.kernel.org; akpm@linux-foundation.org; stable@vger.kernel.org; Mingarelli, Thomas; dann frazier Subject: Re: [PATCH] hpwdt: clean up set_memory_x call for 32 bit
Hi Linus,
> So I don't know who is supposed to be handling this (Wim?), but the > patch itself looks suspicious.
I asked Tom to look at Maxim's patch and see what it does. Tom was going to look at the patch and I'm waiting on feedback from him first. (That's why I din't sent it upstream yet).
> On Sun, Jan 15, 2012 at 8:02 PM, Maxim Uvarov <maxim.uvarov@oracle.com> wrote: > > - set_memory_x((unsigned long)bios32_entrypoint, (2 * PAGE_SIZE)); > > + set_memory_x((unsigned long)bios32_entrypoint & PAGE_MASK, 2); > > If it wasn't page-aligned to begin with, then maybe it needs three pages now? > > > - set_memory_x((unsigned long)cru_rom_addr, cru_length); > > + set_memory_x((unsigned long)cru_rom_addr & PAGE_MASK, cru_length >> PAGE_SHIFT); > > Same here. If we align the start address down, we should fix up the > length. And should we not align the number of pages up? > > In general, a "start/length" conversion to a "page/nr" model needs to be roughly > > len += start & ~PAGE_MASK; > start &= PAGE_MASK; > nr_pages = (len + PAGE_SIZE - 1) >> PAGE_SHIFT; > > to do things right. But I don't know where those magic numbers come > from. Maybe the "2" is already due to the code possibly traversing a > page boundary, and has already been fixed up. Somebody who knows the > driver and the requirements should take a look at this.
Valid comments indeed. Tom please take Linus comments with you when you look at the patch.
Dan: I put you in Cc: also so that you can have a look at it also.
Kind regards, Wim.
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |