Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 334271
b: refs/heads/master
c: 8e4627d
h: refs/heads/master
i:
  334269: b543afd
  334267: ac5fe72
  334263: 3f7179d
  334255: fc4cb0a
  334239: 6c10e80
  334207: dca9720
v: v3
  • Loading branch information
David Howells committed Oct 13, 2012
1 parent 09de669 commit 0a65238
Show file tree
Hide file tree
Showing 32 changed files with 207 additions and 697 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 034b5eeb6bc783e7f60e11299154556e65699e7a
refs/heads/master: 8e4627dd865fca4b7e7a46128cd2659e64cdebb0
9 changes: 0 additions & 9 deletions trunk/Documentation/device-mapper/dm-raid.txt
Original file line number Diff line number Diff line change
Expand Up @@ -132,12 +132,3 @@ Here we can see the RAID type is raid4, there are 5 devices - all of
which are 'A'live, and the array is 2/490221568 complete with recovery.
Faulty or missing devices are marked 'D'. Devices that are out-of-sync
are marked 'a'.


Version History
---------------
1.0.0 Initial version. Support for RAID 4/5/6
1.1.0 Added support for RAID 1
1.2.0 Handle creation of arrays that contain failed devices.
1.3.0 Added support for RAID 10
1.3.1 Allow device replacement/rebuild for RAID 10
2 changes: 2 additions & 0 deletions trunk/arch/openrisc/include/asm/Kbuild
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
include include/asm-generic/Kbuild.asm

header-y += elf.h
header-y += ucontext.h

generic-y += atomic.h
Expand Down
File renamed without changes.
51 changes: 50 additions & 1 deletion trunk/arch/openrisc/include/asm/elf.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,60 @@
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*/

#ifndef __ASM_OPENRISC_ELF_H
#define __ASM_OPENRISC_ELF_H

/*
* This files is partially exported to userspace. This allows us to keep
* the ELF bits in one place which should assist in keeping the kernel and
* userspace in sync.
*/

/*
* ELF register definitions..
*/

/* for struct user_regs_struct definition */
#include <asm/ptrace.h>

/* The OR1K relocation types... not all relevant for module loader */
#define R_OR32_NONE 0
#define R_OR32_32 1
#define R_OR32_16 2
#define R_OR32_8 3
#define R_OR32_CONST 4
#define R_OR32_CONSTH 5
#define R_OR32_JUMPTARG 6
#define R_OR32_VTINHERIT 7
#define R_OR32_VTENTRY 8

typedef unsigned long elf_greg_t;

/*
* Note that NGREG is defined to ELF_NGREG in include/linux/elfcore.h, and is
* thus exposed to user-space.
*/
#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t))
typedef elf_greg_t elf_gregset_t[ELF_NGREG];

/* A placeholder; OR32 does not have fp support yes, so no fp regs for now. */
typedef unsigned long elf_fpregset_t;

/* This should be moved to include/linux/elf.h */
#define EM_OR32 0x8472
#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */

/*
* These are used to set parameters in the core dumps.
*/
#define ELF_ARCH EM_OR32
#define ELF_CLASS ELFCLASS32
#define ELF_DATA ELFDATA2MSB

#ifdef __KERNEL__

#include <linux/types.h>
#include <uapi/asm/elf.h>

/*
* This is used to ensure we don't load something for the wrong architecture.
Expand Down Expand Up @@ -65,4 +113,5 @@ extern void dump_elf_thread(elf_greg_t *dest, struct pt_regs *pt);
#define SET_PERSONALITY(ex) \
set_personality(PER_LINUX | (current->personality & (~PER_MASK)))

#endif /* __KERNEL__ */
#endif
File renamed without changes.
File renamed without changes.
17 changes: 16 additions & 1 deletion trunk/arch/openrisc/include/asm/ptrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,25 @@
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*/

#ifndef __ASM_OPENRISC_PTRACE_H
#define __ASM_OPENRISC_PTRACE_H

#ifndef __ASSEMBLY__
/*
* This is the layout of the regset returned by the GETREGSET ptrace call
*/
struct user_regs_struct {
/* GPR R0-R31... */
unsigned long gpr[32];
unsigned long pc;
unsigned long sr;
};
#endif

#ifdef __KERNEL__

#include <asm/spr_defs.h>
#include <uapi/asm/ptrace.h>

/*
* Make kernel PTrace/register structures opaque to userspace... userspace can
Expand Down Expand Up @@ -121,4 +134,6 @@ static inline long regs_return_value(struct pt_regs *regs)
#define PT_ORIG_GPR11 132
#define PT_SYSCALLNO 136

#endif /* __KERNEL__ */

#endif /* __ASM_OPENRISC_PTRACE_H */
File renamed without changes.
7 changes: 0 additions & 7 deletions trunk/arch/openrisc/include/uapi/asm/Kbuild
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
# UAPI Header export list
include include/uapi/asm-generic/Kbuild.asm

header-y += byteorder.h
header-y += elf.h
header-y += kvm_para.h
header-y += param.h
header-y += ptrace.h
header-y += sigcontext.h
header-y += unistd.h
69 changes: 0 additions & 69 deletions trunk/arch/openrisc/include/uapi/asm/elf.h

This file was deleted.

35 changes: 0 additions & 35 deletions trunk/arch/openrisc/include/uapi/asm/ptrace.h

This file was deleted.

4 changes: 2 additions & 2 deletions trunk/crypto/xor.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,11 @@ xor_blocks(unsigned int src_count, unsigned int bytes, void *dest, void **srcs)
EXPORT_SYMBOL(xor_blocks);

/* Set of all registered templates. */
static struct xor_block_template *__initdata template_list;
static struct xor_block_template *template_list;

#define BENCH_SIZE (PAGE_SIZE)

static void __init
static void
do_xor_speed(struct xor_block_template *tmpl, void *b1, void *b2)
{
int speed;
Expand Down
17 changes: 12 additions & 5 deletions trunk/drivers/md/bitmap.c
Original file line number Diff line number Diff line change
Expand Up @@ -163,17 +163,20 @@ static struct md_rdev *next_active_rdev(struct md_rdev *rdev, struct mddev *mdde
* As devices are only added or removed when raid_disk is < 0 and
* nr_pending is 0 and In_sync is clear, the entries we return will
* still be in the same position on the list when we re-enter
* list_for_each_entry_continue_rcu.
* list_for_each_continue_rcu.
*/
struct list_head *pos;
rcu_read_lock();
if (rdev == NULL)
/* start at the beginning */
rdev = list_entry_rcu(&mddev->disks, struct md_rdev, same_set);
pos = &mddev->disks;
else {
/* release the previous rdev and start from there. */
rdev_dec_pending(rdev, mddev);
pos = &rdev->same_set;
}
list_for_each_entry_continue_rcu(rdev, &mddev->disks, same_set) {
list_for_each_continue_rcu(pos, &mddev->disks) {
rdev = list_entry(pos, struct md_rdev, same_set);
if (rdev->raid_disk >= 0 &&
!test_bit(Faulty, &rdev->flags)) {
/* this is a usable devices */
Expand Down Expand Up @@ -470,10 +473,14 @@ static int bitmap_new_disk_sb(struct bitmap *bitmap)
{
bitmap_super_t *sb;
unsigned long chunksize, daemon_sleep, write_behind;
int err = -EINVAL;

bitmap->storage.sb_page = alloc_page(GFP_KERNEL);
if (bitmap->storage.sb_page == NULL)
return -ENOMEM;
if (IS_ERR(bitmap->storage.sb_page)) {
err = PTR_ERR(bitmap->storage.sb_page);
bitmap->storage.sb_page = NULL;
return err;
}
bitmap->storage.sb_page->index = 0;

sb = kmap_atomic(bitmap->storage.sb_page);
Expand Down
Loading

0 comments on commit 0a65238

Please sign in to comment.