Commit 88cf39e5 authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://kernel.bkbits.net/davem/sparc-2.6

into ppc970.osdl.org:/home/torvalds/v2.6/linux
parents ab7666d1 cf463ea5
...@@ -332,6 +332,7 @@ CONFIG_SCSI_SATA=y ...@@ -332,6 +332,7 @@ CONFIG_SCSI_SATA=y
CONFIG_SCSI_SATA_SVW=m CONFIG_SCSI_SATA_SVW=m
CONFIG_SCSI_ATA_PIIX=m CONFIG_SCSI_ATA_PIIX=m
CONFIG_SCSI_SATA_PROMISE=m CONFIG_SCSI_SATA_PROMISE=m
CONFIG_SCSI_SATA_SIL=m
CONFIG_SCSI_SATA_VIA=m CONFIG_SCSI_SATA_VIA=m
CONFIG_SCSI_SATA_VITESSE=m CONFIG_SCSI_SATA_VITESSE=m
# CONFIG_SCSI_BUSLOGIC is not set # CONFIG_SCSI_BUSLOGIC is not set
...@@ -464,7 +465,6 @@ CONFIG_IP_MROUTE=y ...@@ -464,7 +465,6 @@ CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y CONFIG_IP_PIMSM_V2=y
CONFIG_ARPD=y CONFIG_ARPD=y
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y CONFIG_INET_AH=y
CONFIG_INET_ESP=y CONFIG_INET_ESP=y
...@@ -632,7 +632,6 @@ CONFIG_XFRM_USER=m ...@@ -632,7 +632,6 @@ CONFIG_XFRM_USER=m
# #
# SCTP Configuration (EXPERIMENTAL) # SCTP Configuration (EXPERIMENTAL)
# #
CONFIG_IPV6_SCTP__=m
CONFIG_IP_SCTP=m CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set # CONFIG_SCTP_DBG_MSG is not set
# CONFIG_SCTP_DBG_OBJCNT is not set # CONFIG_SCTP_DBG_OBJCNT is not set
...@@ -1205,7 +1204,7 @@ CONFIG_DEVFS_MOUNT=y ...@@ -1205,7 +1204,7 @@ CONFIG_DEVFS_MOUNT=y
# CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVFS_DEBUG is not set
CONFIG_DEVPTS_FS_XATTR=y CONFIG_DEVPTS_FS_XATTR=y
# CONFIG_DEVPTS_FS_SECURITY is not set # CONFIG_DEVPTS_FS_SECURITY is not set
# CONFIG_TMPFS is not set CONFIG_TMPFS=y
CONFIG_HUGETLBFS=y CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y CONFIG_HUGETLB_PAGE=y
CONFIG_RAMFS=y CONFIG_RAMFS=y
...@@ -1751,6 +1750,7 @@ CONFIG_CRYPTO_CAST5=m ...@@ -1751,6 +1750,7 @@ CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_ARC4=m CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_DEFLATE=y CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_TEST=m
# #
......
...@@ -1089,7 +1089,7 @@ static int filldir(void * __buf, const char * name, int namlen, loff_t offset, i ...@@ -1089,7 +1089,7 @@ static int filldir(void * __buf, const char * name, int namlen, loff_t offset, i
{ {
struct linux_dirent32 * dirent; struct linux_dirent32 * dirent;
struct getdents_callback32 * buf = (struct getdents_callback32 *) __buf; struct getdents_callback32 * buf = (struct getdents_callback32 *) __buf;
int reclen = ROUND_UP(NAME_OFFSET(dirent) + namlen + 1); int reclen = ROUND_UP(NAME_OFFSET(dirent) + namlen + 2);
buf->error = -EINVAL; /* only used if we fail.. */ buf->error = -EINVAL; /* only used if we fail.. */
if (reclen > buf->count) if (reclen > buf->count)
...@@ -1103,6 +1103,7 @@ static int filldir(void * __buf, const char * name, int namlen, loff_t offset, i ...@@ -1103,6 +1103,7 @@ static int filldir(void * __buf, const char * name, int namlen, loff_t offset, i
put_user(reclen, &dirent->d_reclen); put_user(reclen, &dirent->d_reclen);
copy_to_user(dirent->d_name, name, namlen); copy_to_user(dirent->d_name, name, namlen);
put_user(0, dirent->d_name + namlen); put_user(0, dirent->d_name + namlen);
put_user(d_type, (char *) dirent + reclen - 1);
((char *) dirent) += reclen; ((char *) dirent) += reclen;
buf->current_dir = dirent; buf->current_dir = dirent;
buf->count -= reclen; buf->count -= reclen;
......
...@@ -26,7 +26,7 @@ struct semaphore { ...@@ -26,7 +26,7 @@ struct semaphore {
#endif #endif
#define __SEMAPHORE_INITIALIZER(name,count) \ #define __SEMAPHORE_INITIALIZER(name,count) \
{ ATOMIC_INIT(count), 0, __WAIT_QUEUE_HEAD_INITIALIZER((name).wait) \ { ATOMIC24_INIT(count), 0, __WAIT_QUEUE_HEAD_INITIALIZER((name).wait) \
__SEM_DEBUG_INIT(name) } __SEM_DEBUG_INIT(name) }
#define __MUTEX_INITIALIZER(name) \ #define __MUTEX_INITIALIZER(name) \
......
...@@ -38,11 +38,12 @@ static __inline__ void free_pgd_fast(pgd_t *pgd) ...@@ -38,11 +38,12 @@ static __inline__ void free_pgd_fast(pgd_t *pgd)
preempt_disable(); preempt_disable();
if (!page->lru.prev) { if (!page->lru.prev) {
(unsigned long *)page->lru.next = pgd_quicklist; page->lru.next = (void *) pgd_quicklist;
pgd_quicklist = (unsigned long *)page; pgd_quicklist = (unsigned long *)page;
} }
(unsigned long)page->lru.prev |= page->lru.prev = (void *)
(((unsigned long)pgd & (PAGE_SIZE / 2)) ? 2 : 1); (((unsigned long)page->lru.prev) |
(((unsigned long)pgd & (PAGE_SIZE / 2)) ? 2 : 1));
pgd_cache_size++; pgd_cache_size++;
preempt_enable(); preempt_enable();
} }
...@@ -62,7 +63,7 @@ static __inline__ pgd_t *get_pgd_fast(void) ...@@ -62,7 +63,7 @@ static __inline__ pgd_t *get_pgd_fast(void)
off = PAGE_SIZE / 2; off = PAGE_SIZE / 2;
mask &= ~2; mask &= ~2;
} }
(unsigned long)ret->lru.prev = mask; ret->lru.prev = (void *) mask;
if (!mask) if (!mask)
pgd_quicklist = (unsigned long *)ret->lru.next; pgd_quicklist = (unsigned long *)ret->lru.next;
ret = (struct page *)(__page_address(ret) + off); ret = (struct page *)(__page_address(ret) + off);
...@@ -76,10 +77,10 @@ static __inline__ pgd_t *get_pgd_fast(void) ...@@ -76,10 +77,10 @@ static __inline__ pgd_t *get_pgd_fast(void)
if (page) { if (page) {
ret = (struct page *)page_address(page); ret = (struct page *)page_address(page);
clear_page(ret); clear_page(ret);
(unsigned long)page->lru.prev = 2; page->lru.prev = (void *) 2UL;
preempt_disable(); preempt_disable();
(unsigned long *)page->lru.next = pgd_quicklist; page->lru.next = (void *) pgd_quicklist;
pgd_quicklist = (unsigned long *)page; pgd_quicklist = (unsigned long *)page;
pgd_cache_size++; pgd_cache_size++;
preempt_enable(); preempt_enable();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment