The NetBSD Project

CVS log for src/sys/external/bsd/drm2/include/linux/idr.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / external / bsd / drm2 / include / linux

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.10.2.1 / (download) - annotate - [select for diffs], Wed Aug 9 17:42:03 2023 UTC (6 months, 3 weeks ago) by martin
Branch: netbsd-10
CVS Tags: netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

Pull up following revision(s) (requested by maya in ticket #316):

	sys/arch/m68k/include/mutex.h: revision 1.13
	sys/arch/arm/include/cpu.h: revision 1.125
	sys/arch/sun68k/include/intr.h: revision 1.21
	sys/arch/arm/include/mutex.h: revision 1.28
	sys/sys/rwlock.h: revision 1.18
	sys/arch/powerpc/include/mutex.h: revision 1.7
	sys/arch/arm/include/mutex.h: revision 1.29
	sys/arch/powerpc/include/mutex.h: revision 1.8
	sys/uvm/uvm_param.h: revision 1.42
	sys/sys/ksem.h: revision 1.16
	sys/arch/x86/include/mutex.h: revision 1.10
	sys/sys/proc.h: revision 1.372
	sys/sys/ksem.h: revision 1.17
	sys/arch/ia64/include/mutex.h: revision 1.8
	sys/arch/evbarm/include/intr.h: revision 1.29
	sys/sys/lua.h: revision 1.9
	sys/arch/next68k/include/intr.h: revision 1.23
	sys/arch/ia64/include/mutex.h: revision 1.9
	sys/arch/hp300/include/intr.h: revision 1.35
	sys/arch/hp300/include/intr.h: revision 1.36
	sys/arch/sparc/include/cpu.h: revision 1.111
	sys/arch/hppa/include/mutex.h: revision 1.16
	sys/arch/vax/include/intr.h: revision 1.31
	sys/arch/hppa/include/mutex.h: revision 1.17
	sys/arch/news68k/include/intr.h: revision 1.28
	sys/arch/hppa/include/mutex.h: revision 1.18
	sys/arch/hppa/include/intr.h: revision 1.3
	sys/arch/hppa/include/mutex.h: revision 1.19
	sys/arch/hppa/include/intr.h: revision 1.4
	sys/sys/sched.h: revision 1.92
	sys/opencrypto/cryptodev.h: revision 1.51
	sys/arch/vax/include/mutex.h: revision 1.20
	sys/arch/sparc64/include/mutex.h: revision 1.10
	sys/arch/ia64/include/sapicvar.h: revision 1.2
	sys/arch/riscv/include/mutex.h: revision 1.5
	sys/arch/amiga/dev/grfabs_cc.c: revision 1.39
	sys/external/bsd/drm2/include/linux/idr.h: revision 1.11
	sys/arch/riscv/include/mutex.h: revision 1.6
	sys/ddb/files.ddb: revision 1.16
	sys/arch/mac68k/include/intr.h: revision 1.32
	share/man/man4/ddb.4: revision 1.203
	sys/ddb/db_command.c: revision 1.183
	sys/arch/mips/include/mutex.h: revision 1.10
	sys/ddb/db_command.c: revision 1.184
	sys/arch/x68k/include/intr.h: revision 1.22
	sys/arch/sparc/include/psl.h: revision 1.51
	sys/arch/or1k/include/mutex.h: revision 1.4
	sys/arch/mips/include/mutex.h: revision 1.11
	sys/arch/arm/xscale/pxa2x0_intr.h: revision 1.16
	sys/arch/sparc64/include/cpu.h: revision 1.134
	sys/arch/sparc/include/psl.h: revision 1.52
	sys/arch/or1k/include/mutex.h: revision 1.5
	sys/arch/mvme68k/include/intr.h: revision 1.22
	sys/arch/luna68k/include/intr.h: revision 1.16
	external/cddl/osnet/sys/sys/kcondvar.h: revision 1.6
	sys/arch/sparc/include/mutex.h: revision 1.12
	sys/arch/sparc/include/mutex.h: revision 1.13
	sys/arch/usermode/include/mutex.h: revision 1.5
	sys/arch/usermode/include/mutex.h: revision 1.6
	sys/kern/kern_core.c: revision 1.38
	usr.sbin/crash/Makefile: revision 1.49
	sys/arch/amiga/include/intr.h: revision 1.23
	sys/arch/alpha/include/mutex.h: revision 1.12
	sys/arch/alpha/include/mutex.h: revision 1.13
	sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.16
	sys/ddb/ddb.h: revision 1.6
	sys/arch/sparc64/include/mutex.h: revision 1.8
	sys/arch/sh3/include/mutex.h: revision 1.12
	sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.17
	sys/ddb/db_syncobj.c: revision 1.1
	sys/arch/vax/include/mutex.h: revision 1.18
	sys/arch/sparc64/include/psl.h: revision 1.63
	sys/arch/sparc64/include/mutex.h: revision 1.9
	sys/arch/sh3/include/mutex.h: revision 1.13
	sys/arch/evbarm/lubbock/obio.c: revision 1.13
	sys/arch/atari/include/intr.h: revision 1.23
	sys/ddb/db_syncobj.c: revision 1.2
	sys/arch/vax/include/mutex.h: revision 1.19
	sys/arch/evbarm/g42xxeb/obio.c: revision 1.14
	sys/arch/evbarm/g42xxeb/obio.c: revision 1.15
	sys/arch/cesfic/include/intr.h: revision 1.14
	sys/ddb/db_syncobj.h: revision 1.1
	sys/arch/x86/include/cpu.h: revision 1.134
	sys/arch/evbarm/g42xxeb/obio.c: revision 1.16
	sys/arch/cesfic/include/intr.h: revision 1.15
	sys/arch/arm/xscale/pxa2x0_intr.c: revision 1.26
	sys/sys/cpu_data.h: revision 1.54
	sys/arch/m68k/include/mutex.h: revision 1.12
	sys/arch/ia64/acpi/madt.c: revision 1.6

sys/rwlock.h: Make this more self-contained for bool.

machine/mutex.h: Sprinkle includes so this can be used by crash(8).

ddb: New `show all tstiles' command.
Shows who's waiting for which locks and what the owner is up to.

Include psl.h for ipl_cookie_t if __MUTEX_PRIVATE

sys: Rip <sys/resourcevar.h> out of <uvm/uvm_param.h>.

And thus out of <sys/param.h>, which is exceedingly overused and
fragile and delenda est.

Should fix (some) issues with the recent inclusion of machine/lock.h
in various machine/mutex.h files.

arm/mutex.h: Need machine/intr.h, machine/lock.h.

For ipl_cookie_t and __cpu_simple_lock_t.
evbarm/intr.h: Define ipl_cookie_t before including ARM_INTR_IMPL.

Otherwise arm/mutex.h doesn't work, due to a cyclic dependency which
should really be fixed.
opencrypto/cryptodev.h: Fix includes.
- Move sys/condvar.h under #ifdef _KERNEL.
- Add some other necessary includes and forward declarations.
- Sort.

hp300/intr.h: Fix missing includes.
linux/idr.h: Need <sys/mutex.h> for kmutex_t.
amiga/intr.h: Don't define spl*() functions if !_KERNEL.

This is used by crash(8) now, and what's important is ipl_cookie_t.
cesfic/intr.h: Expose ipl_cookie_t to userland for crash(8).
cesfic/intr.h: Expose ipl_cookie_t to userland only with _KMEMUSER.

Probably not necessary but let's be a little more cautious about
this.

atari/intr.h: Expose ipl_cookie_t with _KMEMUSER for crash(8).

arm/cpu.h: Need sys/param.h for COHERENCY_UNIT.

Nix machine/param.h -- not meant to be used directly, pulled in by
sys/param.h.

Move the definition of ipl_cookie_t out of the kernel-only sections,
some _KMEMUSER applications need it.

ddb: Cast pointer to uintptr_t first before db_expr_t.

hppa/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

luna68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

mvme68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

news68k/intr.h: Fix includes.  Put some definitions under _KERNEL.

next68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

sys/ksem.h: Hack around fstat(8) abuse of _KERNEL.

sun68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

vax/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

x68k/intr.h: Put functions under _KERNEL so crash(8) can use this.

Make ipl_cookie_t visible for _KMEMUSER userland applications.

fix editor mishap in previous

Explicitly include <sys/mutex.h> for kmutex_t.

Replace kmutex_t * (which may be undefined here) with struct kmutex *,
suggested by Taylor.

hp300/intr.h: Put most of this under #ifdef _KERNEL.
Only ipl_cookie_t really needs to be exposed now, for crash(8).

mac68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).
Make inclusion of sys/intr.h explicit for spl*.

fix hppa and vax builds.

machine/lock.h isn't necessary for __cpu_simple_lock_t, it's in
sys/types.h.  avoids cpu_data.h vs sched.h include order issues.

move the hppa ipl_t typedef with the moved usage of it.
machine/mutex.h: Sprinkle sys/types.h, omit machine/lock.h.

Turns out machine/lock.h is not needed for __cpu_simple_lock_t, which
always comes from sys/types.h.  And, really, sys/types.h (or at least
sys/stdint.h) is needed for uintN_t and uintptr_t.

ddb: Cast pointer to uintptr_t, then to db_expr_t.
Avoids warnings about conversion between pointer and integer of
different size on some architectures.

re-fix hppa builds.

this file uses __cpu_simple_lock(), not just the underlying type,
so it does need machine/lock.h.

Break cycle by using `struct kmutex *' instead of `kmutex_t *'.
sys/sched.h included sys/mutex.h
which includes sys/intr.h
which includes machine/intr.h
which on cats includes arm/footbridge/footbridge_intr.h
which includes arm/cpu.h
which includes sys/cpu_data.h
which includes sys/sched.h

But there was never any real need for sys/mutex.h in sys/sched.h,
because it only uses pointers to the opaque struct kmutex.  Cycle
broken by using `struct kmutex *' instead of pulling in sys/mutex.h
for the definition of kmutex_t.

Side effect: This revealed that sys/cpu_data.h needed sys/intr.h
(which was pulled in accidentally by sys/mutex.h via sys/sched.h) for
SOFTINT_COUNT.  Also revealed some other machine/cpu.h header files
were missing includes of sys/mutex.h for kmutex_t.

ia64: Need sys/types.h for u_int, vaddr_t; sys/mutex.h for kmutex_t.

explicitly include no longer implicitly included sys/mutex.h.

arm/xscale: Use sys/bitops.h fls32 - 1 instead of 31 - __builtin_clz.
Sidesteps namespace collision with `#define bits ...' in net/zlib.c.

complete the previous - there were two calls to find_first_bit() to fix.

arm/xscale: Missed a spot with previous find_first_bit commit.

evbarm/g42xxeb: Fix off-by-one in previous.

The original find_first_bit(x) was 31 - __builtin_clz((uint32_t)x),
which is equivalent to fls32(x) - 1, not to fls32(x).

Note that fls32 is 1-based and returns 0 for x=0.

Revision 1.11 / (download) - annotate - [select for diffs], Tue Jul 11 10:42:36 2023 UTC (7 months, 3 weeks ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

linux/idr.h: Need <sys/mutex.h> for kmutex_t.

Revision 1.10 / (download) - annotate - [select for diffs], Tue Oct 25 23:36:32 2022 UTC (16 months, 1 week ago) by riastradh
Branch: MAIN
CVS Tags: netbsd-10-base
Branch point for: netbsd-10
Changes since 1.9: +10 -3 lines
Diff to previous 1.9 (colored)

linux/idr.h: Update ida_* API.

Revision 1.9 / (download) - annotate - [select for diffs], Sun Dec 19 01:15:21 2021 UTC (2 years, 2 months ago) by riastradh
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

Teach idr_remove to accept failure.

But teach it to return the data if it succeeds too.

Revision 1.8 / (download) - annotate - [select for diffs], Sun Dec 19 01:00:17 2021 UTC (2 years, 2 months ago) by riastradh
Branch: MAIN
Changes since 1.7: +4 -1 lines
Diff to previous 1.7 (colored)

Define idr_init_base.

Nothing actually uses this at the moment, because callers already
specify the base.  Not really sure what the point is!

Revision 1.3.30.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:08:31 2019 UTC (4 years, 8 months ago) by christos
Branch: phil-wifi
Changes since 1.3: +20 -9 lines
Diff to previous 1.3 (colored) next main 1.4 (colored)

Sync with HEAD

Revision 1.3.28.1 / (download) - annotate - [select for diffs], Thu Sep 6 06:56:36 2018 UTC (5 years, 5 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.3: +20 -9 lines
Diff to previous 1.3 (colored) next main 1.4 (colored)

Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.7 / (download) - annotate - [select for diffs], Mon Aug 27 14:14:42 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.6: +0 -2 lines
Diff to previous 1.6 (colored)

Draft rewrite of idr preload.

Previous idr code assumed every caller would definitely call
idr_preload, idr_alloc, idr_preload_end, but some callers skip
idr_alloc if an intermediate failure happens first, and would
therefore leak idr nodes.

Use a per-lwp single-node cache instead, and print warnings about
leakers.

Revision 1.6 / (download) - annotate - [select for diffs], Mon Aug 27 07:15:06 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
Changes since 1.5: +8 -0 lines
Diff to previous 1.5 (colored)

Add ida_simple_remove.

Same as ida_remove for us.  Linux requires caller to handle locking
for ida_remove (so it works with RCU) and ida_simple_remove just uses
a global lock where for users that aren't performance-critical.  If
we ever pserialized idr, we'd have to do the same.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Aug 27 06:55:01 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
Changes since 1.4: +5 -0 lines
Diff to previous 1.4 (colored)

Add idr_get_next and idr_for_each_entry.

Revision 1.4 / (download) - annotate - [select for diffs], Mon Aug 27 06:54:51 2018 UTC (5 years, 6 months ago) by riastradh
Branch: MAIN
Changes since 1.3: +7 -7 lines
Diff to previous 1.3 (colored)

Sort.

Revision 1.3.4.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:21 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-maxphys
Changes since 1.3.4.1: +115 -0 lines
Diff to previous 1.3.4.1 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.2.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:55:39 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.2: +57 -10 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

Rebase.

Revision 1.3.4.1, Wed Jul 16 20:56:25 2014 UTC (9 years, 7 months ago) by tls
Branch: tls-maxphys
Changes since 1.3: +0 -115 lines
FILE REMOVED

file idr.h was added on branch tls-maxphys on 2014-08-20 00:04:21 +0000

Revision 1.3 / (download) - annotate - [select for diffs], Wed Jul 16 20:56:25 2014 UTC (9 years, 7 months ago) by riastradh
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, tls-maxphys-base, tls-earlyentropy-base, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-base, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: tls-maxphys, phil-wifi, pgoyette-compat
Changes since 1.2: +57 -10 lines
Diff to previous 1.2 (colored)

Make it build and boot on my test machines.

Screen blanks on boot on the Ivy Bridge system with

   DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun

But after that everything is OK.  Appears to be an upstream problem.
To investigate...

I think there's a cache flushing issue somewhere -- there are little
display artefacts on my T60.

Revision 1.2.6.2 / (download) - annotate - [select for diffs], Thu May 22 11:40:56 2014 UTC (9 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.2.6.1: +68 -0 lines
Diff to previous 1.2.6.1 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.2.4.2 / (download) - annotate - [select for diffs], Sun May 18 17:46:01 2014 UTC (9 years, 9 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.2.4.1: +68 -0 lines
Diff to previous 1.2.4.1 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored)

sync with head

Revision 1.2.6.1, Tue Mar 18 18:20:43 2014 UTC (9 years, 11 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.2: +0 -68 lines
FILE REMOVED

file idr.h was added on branch yamt-pagecache on 2014-05-22 11:40:56 +0000

Revision 1.2.4.1, Tue Mar 18 18:20:43 2014 UTC (9 years, 11 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.2: +0 -68 lines
FILE REMOVED

file idr.h was added on branch rmind-smpnet on 2014-05-18 17:46:01 +0000

Revision 1.2 / (download) - annotate - [select for diffs], Tue Mar 18 18:20:43 2014 UTC (9 years, 11 months ago) by riastradh
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Branch point for: yamt-pagecache, tls-earlyentropy, rmind-smpnet
Changes since 1.1: +68 -0 lines
Diff to previous 1.1 (colored)

Merge riastradh-drm2 to HEAD.

Revision 1.1.2.9 / (download) - annotate - [select for diffs], Wed Jan 15 13:51:58 2014 UTC (10 years, 1 month ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.8: +1 -1 lines
Diff to previous 1.1.2.8 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

Convert linux_idr(9) to use spin locks.

idr_for_each is unlocked; caller must exclude modifications.

Eventually this should be rewritten with pserialize and a fancy
bitmap algorithm, but this *actually* works for now.

Revision 1.1.2.8 / (download) - annotate - [select for diffs], Wed Jan 15 13:51:48 2014 UTC (10 years, 1 month ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.7: +5 -6 lines
Diff to previous 1.1.2.7 (colored) to branchpoint 1.1 (colored)

Revert "Rewrite idr to use a dumber algorithm that admits pserialized use."

This reverts commit 3a389a1cb20777fb73575f0514b96265052ac1ea.

I don't know what I was smoking with this; just need to change the
rwlock to a spin lock and we'll be good!

Revision 1.1.2.7 / (download) - annotate - [select for diffs], Mon Dec 30 04:52:11 2013 UTC (10 years, 2 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.6: +6 -5 lines
Diff to previous 1.1.2.6 (colored) to branchpoint 1.1 (colored)

Rewrite idr to use a dumber algorithm that admits pserialized use.

drm2 doesn't use them with RCU, but it does use them under spin locks,
so an rwlock is not kosher.

This algorithm is super-dumb, but the idr API has changed upstream,
and this is not performance-critical, so it's not worth investing
time in a better algorithm at the moment.

Revision 1.1.2.6 / (download) - annotate - [select for diffs], Wed Jul 24 03:13:59 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.5: +11 -0 lines
Diff to previous 1.1.2.5 (colored) to branchpoint 1.1 (colored)

Use cpp to prefix linux_ to all the idr names.

Now all global symbols drm2.kmod defines begin with linux_ or drm_,
making it easier to check whether I've missed anything by running

   nm --undefined-only drm2.kmod | awk '$3 ~ /^(drm|linux)_/'

Revision 1.1.2.5 / (download) - annotate - [select for diffs], Wed Jul 24 02:51:35 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.4: +1 -0 lines
Diff to previous 1.1.2.4 (colored) to branchpoint 1.1 (colored)

Add idr_for_each to Linux idr abstraction.

Revision 1.1.2.4 / (download) - annotate - [select for diffs], Wed Jul 24 02:07:46 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.3: +1 -0 lines
Diff to previous 1.1.2.3 (colored) to branchpoint 1.1 (colored)

Implement idr_replace.

Revision 1.1.2.3 / (download) - annotate - [select for diffs], Wed Jul 24 02:07:09 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.2: +2 -1 lines
Diff to previous 1.1.2.2 (colored) to branchpoint 1.1 (colored)

Implement idr_remove_all.

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Wed Jul 24 00:50:36 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1.2.1: +20 -1 lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored)

Dumb implementation of a subset of Linux's idr abstraction.

An idr maintains a mapping from integers to data, like file descriptors
to struct file pointers.

Revision 1.1.2.1 / (download) - annotate - [select for diffs], Wed Jul 24 00:33:12 2013 UTC (10 years, 7 months ago) by riastradh
Branch: riastradh-drm2
Changes since 1.1: +35 -0 lines
Diff to previous 1.1 (colored)

Add stubs for Linux header files for drm.

Revision 1.1, Wed Jul 24 00:33:12 2013 UTC (10 years, 7 months ago) by riastradh
Branch: MAIN
CVS Tags: riastradh-drm2-base3
Branch point for: riastradh-drm2
FILE REMOVED

file idr.h was initially added on branch riastradh-drm2.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>