Messages in this thread | | | Date | Thu, 01 Jul 1999 11:21:23 +0200 | From | Matthias Welwarsky <> | Subject | Re: Warnings compiling 2.3.9 on Alpha |
| |
Matthias Welwarsky wrote:
> Cannot quite decide whether it's lethal or not. Seems that there are > typecasts from a pointer (64bit) to an int (32bit). A quick look shows > that the TryLockPage/UnlockPage seem to be the cause...
Ok, looking a little more closer it seems that its the following assignment:
#define TryLockPage(page) \ ({ int _ret = test_and_set_bit(PG_locked, &(page)->flags); \ if (!_ret) page->owner = (int)current; _ret; }) ^^^^^^^^^^^^^^^^^^^^^^^^^^ #define UnlockPage(page) do { \ if (page->owner != (int)current) { ... ^^^^^^^^^^^^^^^^^^^^^^^^^^^
"page->owner" is an int while current is a pointer variable. Intellism again :-( Is there a reason why "page->owner" cannot be a pointer type variable?
Gruss, Matze
-- Two OS engineers facing a petri net chart: "dead lock in four moves!"
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |