>>>>> On Fri, 12 Dec 2003 10:37:16 -0500, Bill Nottingham <notting@redhat.com> said: Bill> Back long ago, I reported a problem with PPP on ia64: Bill> http://www.gelato.unsw.edu.au/linux-ia64/0105/1641.html Bill> We added the workaround in our tree for earlier releases, and Bill> promptly forgot about it; however, someone reported that RHEL Bill> 3 has the same issue (as we took the workaround out.) Bill> Jakub noticed the following - does this explain the problem? Yes, it sure does. Argh, passing functions to get/put-user macro arguments. I suppose that's legal... ;-( Bill> But, a function call clobbers r8. Guess a __typeof(x) __x = Bill> (x); before __pu_err and s/x/__x/ is needed. Probably Bill> __pu_addr decl should be moved before __pu_err is initialized Bill> too, otherwise extern int *foo (); put_user (0, foo ()); might Bill> not work properly. Yeah, we need to be careful not to evalute any macro arguments while using the special register-usage convention needed for the exception handlers. It affects get_user(), too. Let me work on a patch. --david - To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.htmlReceived on Fri Dec 12 12:27:13 2003
This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:21 EST