Re: [RESEND PATCH] mm: Use spin_lock_irqsave in __set_page_dirty_nobuffers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/21/2011 12:18 AM, Andrew Morton wrote:
On Mon, 10 Jan 2011 22:15:34 -0800 Andy Grover<andy.grover@xxxxxxxxxx>  wrote:

RDS is calling set_page_dirty from interrupt context,

yikes.  Whatever possessed you to try that?

When doing an RDMA read into pinned pages, we get notified the operation is complete in a tasklet, and would like to mark the pages dirty and unpin in the same context.

The issue was __set_page_dirty_buffers (via calling set_page_dirty) was unconditionally re-enabling irqs as a side-effect because it was using *_irq instead of *_irqsave/restore.

How would you recommend we proceed? My understanding was calling set_page_dirty prior to issuing the operation isn't an option since it might get cleaned too early.

Thanks -- Regards -- Andy

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]