Commit 0b5403cf authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://are.twiddle.net/axp-2.6

into ppc970.osdl.org:/home/torvalds/v2.5/linux
parents a3c454e1 bb60cd07
......@@ -205,3 +205,15 @@ decompress_kernel(void *output_start,
/* puts(" done, booting the kernel.\n"); */
return output_ptr;
}
/* dummy-up printk */
asmlinkage int printk(const char *fmt, ...)
{
va_list args;
long ret;
va_start(args, fmt);
ret = srm_printk(fmt, args);
va_end(args);
return ret;
}
......@@ -131,7 +131,7 @@ osf_filldir(void *__buf, const char *name, int namlen, loff_t offset,
if (copy_to_user(dirent->d_name, name, namlen) ||
put_user(0, dirent->d_name + namlen))
return -EFAULT;
((char *) dirent) += reclen;
dirent = (void *)dirent + reclen;
buf->dirent = dirent;
buf->count -= reclen;
return 0;
......
......@@ -500,7 +500,7 @@ sg_classify(struct scatterlist *sg, struct scatterlist *end, int virt_ok)
/* Given a scatterlist leader, choose an allocation method and fill
in the blanks. */
static inline int
static int
sg_fill(struct scatterlist *leader, struct scatterlist *end,
struct scatterlist *out, struct pci_iommu_arena *arena,
dma_addr_t max_dma, int dac_allowed)
......
......@@ -203,9 +203,9 @@ extern struct mcheck_info
unsigned char extra;
} __mcheck_info;
#define mcheck_expected(cpu) ((void)(cpu), __mcheck_info.expected)
#define mcheck_taken(cpu) ((void)(cpu), __mcheck_info.taken)
#define mcheck_extra(cpu) ((void)(cpu), __mcheck_info.extra)
#define mcheck_expected(cpu) (*((void)(cpu), &__mcheck_info.expected))
#define mcheck_taken(cpu) (*((void)(cpu), &__mcheck_info.taken))
#define mcheck_extra(cpu) (*((void)(cpu), &__mcheck_info.extra))
#endif
extern void process_mcheck_info(unsigned long vector, unsigned long la_ptr,
......
......@@ -444,6 +444,9 @@ sys_call_table:
.quad sys_clock_nanosleep
.quad sys_semtimedop
.quad sys_tgkill
.quad sys_stat64 /* 425 */
.quad sys_lstat64
.quad sys_fstat64
.size sys_call_table, . - sys_call_table
.type sys_call_table, @object
......
......@@ -143,7 +143,7 @@ void insb (unsigned long port, void *dst, unsigned long count)
return;
count--;
*(unsigned char *) dst = inb(port);
((unsigned char *) dst)++;
dst += 1;
}
while (count >= 4) {
......@@ -154,13 +154,13 @@ void insb (unsigned long port, void *dst, unsigned long count)
w |= inb(port) << 16;
w |= inb(port) << 24;
*(unsigned int *) dst = w;
((unsigned int *) dst)++;
dst += 4;
}
while (count) {
--count;
*(unsigned char *) dst = inb(port);
((unsigned char *) dst)++;
dst += 1;
}
}
......@@ -181,8 +181,8 @@ void insw (unsigned long port, void *dst, unsigned long count)
if (!count)
return;
count--;
*(unsigned short* ) dst = inw(port);
((unsigned short *) dst)++;
*(unsigned short *) dst = inw(port);
dst += 2;
}
while (count >= 2) {
......@@ -191,7 +191,7 @@ void insw (unsigned long port, void *dst, unsigned long count)
w = inw(port);
w |= inw(port) << 16;
*(unsigned int *) dst = w;
((unsigned int *) dst)++;
dst += 4;
}
if (count) {
......@@ -209,70 +209,72 @@ void insw (unsigned long port, void *dst, unsigned long count)
void insl (unsigned long port, void *dst, unsigned long count)
{
unsigned int l = 0, l2;
if (!count)
return;
switch (((unsigned long) dst) & 0x3)
{
case 0x00: /* Buffer 32-bit aligned */
while (count--)
{
*(unsigned int *) dst = inl(port);
((unsigned int *) dst)++;
dst += 4;
}
break;
/* Assuming little endian Alphas in cases 0x01 -- 0x03 ... */
case 0x02: /* Buffer 16-bit aligned */
--count;
l = inl(port);
*(unsigned short *) dst = l;
((unsigned short *) dst)++;
dst += 2;
while (count--)
{
l2 = inl(port);
*(unsigned int *) dst = l >> 16 | l2 << 16;
((unsigned int *) dst)++;
dst += 4;
l = l2;
}
*(unsigned short *) dst = l >> 16;
break;
case 0x01: /* Buffer 8-bit aligned */
--count;
l = inl(port);
*(unsigned char *) dst = l;
((unsigned char *) dst)++;
dst += 1;
*(unsigned short *) dst = l >> 8;
((unsigned short *) dst)++;
dst += 2;
while (count--)
{
l2 = inl(port);
*(unsigned int *) dst = l >> 24 | l2 << 8;
((unsigned int *) dst)++;
dst += 4;
l = l2;
}
*(unsigned char *) dst = l >> 24;
break;
case 0x03: /* Buffer 8-bit aligned */
--count;
l = inl(port);
*(unsigned char *) dst = l;
((unsigned char *) dst)++;
dst += 1;
while (count--)
{
l2 = inl(port);
*(unsigned int *) dst = l << 24 | l2 >> 8;
((unsigned int *) dst)++;
dst += 4;
l = l2;
}
*(unsigned short *) dst = l >> 8;
((unsigned short *) dst)++;
dst += 2;
*(unsigned char *) dst = l >> 24;
break;
}
......@@ -290,7 +292,7 @@ void outsb(unsigned long port, const void * src, unsigned long count)
while (count) {
count--;
outb(*(char *)src, port);
((char *) src)++;
src += 1;
}
}
......@@ -307,7 +309,7 @@ void outsw (unsigned long port, const void *src, unsigned long count)
panic("outsw: memory not short aligned");
}
outw(*(unsigned short*)src, port);
((unsigned short *) src)++;
src += 2;
--count;
}
......@@ -315,7 +317,7 @@ void outsw (unsigned long port, const void *src, unsigned long count)
unsigned int w;
count -= 2;
w = *(unsigned int *) src;
((unsigned int *) src)++;
src += 4;
outw(w >> 0, port);
outw(w >> 16, port);
}
......@@ -335,69 +337,69 @@ void outsw (unsigned long port, const void *src, unsigned long count)
void outsl (unsigned long port, const void *src, unsigned long count)
{
unsigned int l = 0, l2;
if (!count)
return;
switch (((unsigned long) src) & 0x3)
{
case 0x00: /* Buffer 32-bit aligned */
while (count--)
{
outl(*(unsigned int *) src, port);
((unsigned int *) src)++;
src += 4;
}
break;
/* Assuming little endian Alphas in cases 0x01 -- 0x03 ... */
case 0x02: /* Buffer 16-bit aligned */
--count;
l = *(unsigned short *) src << 16;
((unsigned short *) src)++;
src += 2;
while (count--)
{
l2 = *(unsigned int *) src;
((unsigned int *) src)++;
src += 4;
outl (l >> 16 | l2 << 16, port);
l = l2;
}
l2 = *(unsigned short *) src;
outl (l >> 16 | l2 << 16, port);
break;
case 0x01: /* Buffer 8-bit aligned */
--count;
l = *(unsigned char *) src << 8;
((unsigned char *) src)++;
src += 1;
l |= *(unsigned short *) src << 16;
((unsigned short *) src)++;
src += 2;
while (count--)
{
l2 = *(unsigned int *) src;
((unsigned int *) src)++;
src += 4;
outl (l >> 8 | l2 << 24, port);
l = l2;
}
l2 = *(unsigned char *) src;
outl (l >> 8 | l2 << 24, port);
break;
case 0x03: /* Buffer 8-bit aligned */
--count;
l = *(unsigned char *) src << 24;
((unsigned char *) src)++;
src += 1;
while (count--)
{
l2 = *(unsigned int *) src;
((unsigned int *) src)++;
src += 4;
outl (l >> 24 | l2 << 8, port);
l = l2;
}
l2 = *(unsigned short *) src;
((unsigned short *) src)++;
src += 2;
l2 |= *(unsigned char *) src << 16;
outl (l >> 24 | l2 << 8, port);
break;
......@@ -435,7 +437,7 @@ void _memcpy_fromio(void * to, unsigned long from, long count)
} while (count >= 0);
count += 4;
}
if (count >= 2 && ((unsigned long)to & 1) == (from & 1)) {
count -= 2;
do {
......@@ -486,7 +488,7 @@ void _memcpy_toio(unsigned long to, const void * from, long count)
} while (count >= 0);
count += 4;
}
if (count >= 2 && (to & 1) == ((unsigned long)from & 1)) {
count -= 2;
do {
......
......@@ -283,7 +283,7 @@ asmlinkage long sys_readlink(const char __user * path, char __user * buf, int bu
/* ---------- LFS-64 ----------- */
#if !defined(__alpha__) && !defined(__ia64__) && !defined(__mips64) && !defined(__x86_64__) && !defined(CONFIG_ARCH_S390X)
#if !defined(__ia64__) && !defined(__mips64) && !defined(__x86_64__) && !defined(CONFIG_ARCH_S390X)
static long cp_new_stat64(struct kstat *stat, struct stat64 __user *statbuf)
{
......
#ifndef _ALPHA_STAT_H
#define _ALPHA_STAT_H
struct __old_kernel_stat {
struct stat {
unsigned int st_dev;
unsigned int st_ino;
unsigned int st_mode;
......@@ -14,27 +14,35 @@ struct __old_kernel_stat {
unsigned long st_mtime;
unsigned long st_ctime;
unsigned int st_blksize;
int st_blocks;
unsigned int st_blocks;
unsigned int st_flags;
unsigned int st_gen;
};
struct stat {
unsigned int st_dev;
unsigned int st_ino;
/* The stat64 structure increases the size of dev_t, blkcnt_t, adds
nanosecond resolution times, and padding for expansion. */
struct stat64 {
unsigned long st_dev;
unsigned long st_ino;
unsigned long st_rdev;
long st_size;
unsigned long st_blocks;
unsigned int st_mode;
unsigned int st_nlink;
unsigned int st_uid;
unsigned int st_gid;
unsigned int st_rdev;
long st_size;
unsigned int st_blksize;
unsigned int st_nlink;
unsigned int __pad0;
unsigned long st_atime;
unsigned long st_atime_nsec;
unsigned long st_mtime;
unsigned long st_mtime_nsec;
unsigned long st_ctime;
unsigned int st_blksize;
int st_blocks;
unsigned int st_flags;
unsigned int st_gen;
unsigned long st_ctime_nsec;
long __unused[3];
};
#endif
......@@ -360,7 +360,10 @@
#define __NR_clock_nanosleep 422
#define __NR_semtimedop 423
#define __NR_tgkill 424
#define NR_SYSCALLS 425
#define __NR_stat64 425
#define __NR_lstat64 426
#define __NR_fstat64 427
#define NR_SYSCALLS 428
#if defined(__GNUC__)
......@@ -573,9 +576,9 @@ static inline off_t lseek(int fd, off_t off, int whence)
return sys_lseek(fd, off, whence);
}
static inline long _exit(int value)
static inline void _exit(int value)
{
return sys_exit(value);
sys_exit(value);
}
#define exit(x) _exit(x)
......
......@@ -16,7 +16,7 @@ static void __init error(char *x)
message = x;
}
static void __init *malloc(int size)
static void __init *malloc(size_t size)
{
return kmalloc(size, GFP_KERNEL);
}
......
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