07 Jan, 2009
1 commit
-
CC: Jack Steiner
Signed-off-by: Kay Sievers
Signed-off-by: Greg Kroah-Hartman
17 Dec, 2008
1 commit
10 Dec, 2008
1 commit
-
Eliminate compile error when compiling without CONFIG_HUGETLB_PAGE.
Signed-off-by: Jack Steiner
Signed-off-by: Tony Luck
03 Dec, 2008
1 commit
-
If xpc.ko and gru.ko are both statically linked into the kernel, then
xpc_init() can get called before gru_init() and make a call to one of the
gru's exported functions before the gru has initialized itself. The end
result is a NULL dereference.Signed-off-by: Dean Nelson
Signed-off-by: Linus Torvalds
20 Nov, 2008
2 commits
-
Enable -D DEBUG in the GRU Makefile if CONFIG_SGI_GRU_DEBUG is selected.
Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
11 Nov, 2008
1 commit
-
Impact: fix double entry creation in /proc
There is a collision between two UV functions:
both uv_ptc_init() and gru_proc_init() try to make /proc/sgi_uvSo move it's creation to a single place: uv_system_init()
Signed-off-by: Cliff Wickman
Signed-off-by: Ingo Molnar
17 Oct, 2008
2 commits
-
A few minor updates for the GRU driver.
- documentation changes found in code reviews
- changes to #ifdefs to make them recognized by "unifdef"
(used in simulator testing)
- change GRU context load/unload to prefetch data[akpm@linux-foundation.org: fix typo in comment]
Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The kernel.h macro DIV_ROUND_UP performs the computation (((n) + (d) - 1) /
(d)) but is perhaps more readable.An extract of the semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)//
@haskernel@
@@#include
@depends on haskernel@
expression n,d;
@@(
- (n + d - 1) / d
+ DIV_ROUND_UP(n,d)
|
- (n + (d - 1)) / d
+ DIV_ROUND_UP(n,d)
)@depends on haskernel@
expression n,d;
@@- DIV_ROUND_UP((n),d)
+ DIV_ROUND_UP(n,d)@depends on haskernel@
expression n,d;
@@- DIV_ROUND_UP(n,(d))
+ DIV_ROUND_UP(n,d)
//Signed-off-by: Julia Lawall
Cc: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
14 Sep, 2008
1 commit
-
If you are on ia64 and you modprobe xpc then modprobe -r xpc, you
immediately get a panic. xpc depends on xp which depends on gru for a
symbol. That symbol is only used when we are running on UV hardware.Currently, the GRU driver detects we are not on UV hardware and does no
initializing. It does not do the same check when unloading. As a result,
the gru driver attempts to tear down stuff that was not setup.This is a simple two-line workaround to get us through this release. Once
2.6.28 is opened, we need to rework the symbols that xp is depending on
from gru so the gru driver can properly fail to load when hardware is not
available.Signed-off-by: Robin Holt
Cc: "Luck, Tony"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
13 Aug, 2008
1 commit
-
Fix preprocessor symbol so that sparse sees it and does not generate
errors:drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"
drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"
drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"
drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"
drivers/misc/sgi-gru/grutlbpurge.c:185:11: error: undefined identifier 'GRUREGION'
drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"
drivers/misc/sgi-gru/grutables.h:286:2: error: "Unsupported architecture"Signed-off-by: Randy Dunlap
Cc: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
06 Aug, 2008
1 commit
-
Removed duplicated include in
drivers/misc/sgi-gru/grutlbpurge.c.Signed-off-by: Huang Weiyi
Cc: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
31 Jul, 2008
12 commits
-
Fixes problems identified in a code review:
- add comment with high level dscription of the GRU
- prepend "gru_" to all global names
- delete unused function
- couple of trivial bug fixes[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Jack Steiner
Cc: Nick Piggin
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch adds the GRU driver makefile
Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file contains the functions for handlinf GRU TLB flushing, This
includes functions to handle the MMUOPS callouts.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file externalizes some GRU state & statistics to the user using the
/proc file system.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file contains functions realted to managing GRU resources provided to
the user. Examples include GRU context assignment, load, unload,
migration, etc..Signed-off-by: Jack Steiner
Cc: Nick Piggin
Cc: Hugh Dickins
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file contains functions for handling services provided to other
kernel modules that use the GRU.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file contains the functions that manage GRU page faults and
exceptions.Signed-off-by: Jack Steiner
Cc: Christoph Hellwig
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This file contains the functions for initializing the driver, handling
file & vma operations and for processing IOCTL requests from the user.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch contains the header file used to export GRU services to other
kernel drivers such as XPMEM or XPNET.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patch contains header files internal to the GRU driver.
Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This patchs contains macros & inline functions used to issue instructions
to the GRU.Signed-off-by: Jack Steiner
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This series of patches adds a driver for the SGI UV GRU. The driver is
still in development but it currently compiles for both x86_64 & IA64.
All simple regression tests pass on IA64. Although features remain to be
added, I'd like to start the process of getting the driver into the
kernel. Additional kernel drivers will depend on services provide by the
GRU driver.The GRU is a hardware resource located in the system chipset. The GRU
contains memory that is mmaped into the user address space. This memory
is used to communicate with the GRU to perform functions such as
load/store, scatter/gather, bcopy, AMOs, etc. The GRU is directly
accessed by user instructions using user virtual addresses. GRU
instructions (ex., bcopy) use user virtual addresses for operands.The GRU contains a large TLB that is functionally very similar to
processor TLBs. Because the external contains a TLB with user virtual
address, it requires callouts from the core VM system when certain types
of changes are made to the process page tables. There are several MMUOPS
patches currently being discussed but none has been accepted into the
kernel. The GRU driver is built using version V18 from Andrea Arcangeli.This patch:
Contains the definitions of the hardware GRU data structures that are used
by the driver to manage the GRU.[akpm@linux-foundation;org: export hpage_shift]
Signed-off-by: Jack Steiner
Cc: "Luck, Tony"
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds