svn commit: r345095 - in head/sys/compat/linuxkpi/common: include/linux src

Hans Petter Selasky hselasky at FreeBSD.org
Wed Mar 13 18:02:49 UTC 2019


Author: hselasky
Date: Wed Mar 13 18:02:47 2019
New Revision: 345095
URL: https://svnweb.freebsd.org/changeset/base/345095

Log:
  Implement ida_free() and ida_alloc_max() in the LinuxKPI.
  
  Submitted by:		Johannes Lundberg <johalun0 at gmail.com>
  MFC after:		1 week
  Sponsored by:		Limelight Networks
  Sponsored by:		Mellanox Technologies

Modified:
  head/sys/compat/linuxkpi/common/include/linux/idr.h
  head/sys/compat/linuxkpi/common/src/linux_idr.c

Modified: head/sys/compat/linuxkpi/common/include/linux/idr.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/idr.h	Wed Mar 13 18:00:25 2019	(r345094)
+++ head/sys/compat/linuxkpi/common/include/linux/idr.h	Wed Mar 13 18:02:47 2019	(r345095)
@@ -112,6 +112,7 @@ struct ida {
 int	ida_pre_get(struct ida *ida, gfp_t gfp_mask);
 int	ida_get_new_above(struct ida *ida, int starting_id, int *p_id);
 void	ida_remove(struct ida *ida, int id);
+void	ida_free(struct ida *ida, int id);
 void	ida_destroy(struct ida *ida);
 void	ida_init(struct ida *ida);
 
@@ -124,6 +125,13 @@ ida_get_new(struct ida *ida, int *p_id)
 {
 
 	return (ida_get_new_above(ida, 0, p_id));
+}
+
+static inline int
+ida_alloc_max(struct ida *ida, unsigned int max, gfp_t gfp)
+{
+
+	return (ida_simple_get(ida, 0, max, gfp));
 }
 
 static inline bool

Modified: head/sys/compat/linuxkpi/common/src/linux_idr.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_idr.c	Wed Mar 13 18:00:25 2019	(r345094)
+++ head/sys/compat/linuxkpi/common/src/linux_idr.c	Wed Mar 13 18:02:47 2019	(r345095)
@@ -797,6 +797,13 @@ ida_remove(struct ida *ida, int id)
 }
 
 void
+ida_free(struct ida *ida, int id)
+{
+
+	ida_remove(ida, id);
+}
+
+void
 ida_init(struct ida *ida)
 {
 	idr_init(&ida->idr);


More information about the svn-src-head mailing list