On 16/01/14 23:03, Kristian Høgsberg wrote: > On Sat, Jan 11, 2014 at 04:54:44PM +0000, Emil Velikov wrote: >> Additionally this commit removes the following exported functions >> >> _gbm_udev_device_new_from_fd() >> _gbm_fd_get_device_name() >> _gbm_log() >> >> All three were erroneously marked as exported since their inception. >> Neither of them has ever been a part of the API thus there should be >> no users of them. >> >> Cc: Chad Versace <chad.vers...@linux.intel.com> >> Cc: Kristian Høgsberg <k...@bitplanet.net> >> Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> >> --- >> >> Chad, Kristian >> >> Can you give us some tips of there are any non-mesa users of the >> above functions. They seems to have never been exposed by gbm api >> but were marked as exported since day one :\ > > They were exported so that external gbm modules could call them. > Today we compile the gbm dri backend into libgbm, so it's not an > issue. Nothing outside mesa should use it. > If that's the case I think you won't mind if I follow up with another patch that removes the rest of the functions that are not in the API/are used only by the backend(s).
Thanks Emil > Reviewed-by: Kristian Høgsberg <k...@bitplanet.net> > >> Thanks >> Emil >> --- >> >> .../state_trackers/gbm/gbm_gallium_drmint.h | 1 - >> src/gbm/Makefile.am | 7 +- >> src/gbm/backends/dri/driver_name.c | 89 >> ---------------------- >> src/gbm/backends/dri/gbm_dri.c | 3 +- >> src/gbm/backends/dri/gbm_driint.h | 4 - >> src/gbm/main/common.c | 88 >> --------------------- >> src/gbm/main/common.h | 42 ---------- >> src/gbm/main/gbm.c | 1 - >> 8 files changed, 5 insertions(+), 230 deletions(-) >> delete mode 100644 src/gbm/backends/dri/driver_name.c >> delete mode 100644 src/gbm/main/common.c >> delete mode 100644 src/gbm/main/common.h >> >> diff --git a/src/gallium/state_trackers/gbm/gbm_gallium_drmint.h >> b/src/gallium/state_trackers/gbm/gbm_gallium_drmint.h >> index a5d6d83..4534dd8 100644 >> --- a/src/gallium/state_trackers/gbm/gbm_gallium_drmint.h >> +++ b/src/gallium/state_trackers/gbm/gbm_gallium_drmint.h >> @@ -32,7 +32,6 @@ >> >> #include "gbmint.h" >> >> -#include "common.h" >> #include "common_drm.h" >> >> struct gbm_gallium_drm_device { >> diff --git a/src/gbm/Makefile.am b/src/gbm/Makefile.am >> index 5ae7a68..4030cc6 100644 >> --- a/src/gbm/Makefile.am >> +++ b/src/gbm/Makefile.am >> @@ -19,10 +19,10 @@ include_HEADERS = main/gbm.h >> >> libgbm_la_SOURCES = \ >> main/gbm.c \ >> - main/backend.c \ >> - main/common.c >> + main/backend.c >> libgbm_la_LDFLAGS = -version-info 1:0 >> libgbm_la_LIBADD = \ >> + $(top_builddir)/src/loader/libloader.la \ >> $(LIBUDEV_LIBS) \ >> $(LIBKMS_LIBS) \ >> $(DLOPEN_LIBS) >> @@ -36,8 +36,7 @@ endif >> if HAVE_DRI >> noinst_LTLIBRARIES = libgbm_dri.la >> libgbm_dri_la_SOURCES = \ >> - backends/dri/gbm_dri.c \ >> - backends/dri/driver_name.c >> + backends/dri/gbm_dri.c >> >> libgbm_dri_la_CFLAGS = \ >> $(AM_CFLAGS) \ >> diff --git a/src/gbm/backends/dri/driver_name.c >> b/src/gbm/backends/dri/driver_name.c >> deleted file mode 100644 >> index 2ed209f..0000000 >> --- a/src/gbm/backends/dri/driver_name.c >> +++ /dev/null >> @@ -1,89 +0,0 @@ >> -/* >> - * Copyright © 2011 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF >> - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, >> - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> - * DEALINGS IN THE SOFTWARE. >> - * >> - * Authors: >> - * Kristian Høgsberg <k...@bitplanet.net> >> - * Benjamin Franzke <benjaminfran...@googlemail.com> >> - */ >> - >> -#include <stdio.h> >> -#include <string.h> >> - >> -#include <libudev.h> >> - >> -#include "gbm_driint.h" >> -#define DRIVER_MAP_DRI2_ONLY >> -#include "pci_ids/pci_id_driver_map.h" >> - >> -char * >> -dri_fd_get_driver_name(int fd) >> -{ >> - struct udev *udev; >> - struct udev_device *device, *parent; >> - const char *pci_id; >> - char *driver = NULL; >> - int vendor_id, chip_id, i, j; >> - >> - udev = udev_new(); >> - device = _gbm_udev_device_new_from_fd(udev, fd); >> - if (device == NULL) >> - return NULL; >> - >> - parent = udev_device_get_parent(device); >> - if (parent == NULL) { >> - fprintf(stderr, "gbm: could not get parent device"); >> - goto out; >> - } >> - >> - pci_id = udev_device_get_property_value(parent, "PCI_ID"); >> - if (pci_id == NULL || >> - sscanf(pci_id, "%x:%x", &vendor_id, &chip_id) != 2) { >> - fprintf(stderr, "gbm: malformed or no PCI ID"); >> - goto out; >> - } >> - >> - for (i = 0; driver_map[i].driver; i++) { >> - if (vendor_id != driver_map[i].vendor_id) >> - continue; >> - if (driver_map[i].num_chips_ids == -1) { >> - driver = strdup(driver_map[i].driver); >> - _gbm_log("pci id for %d: %04x:%04x, driver %s", >> - fd, vendor_id, chip_id, driver); >> - goto out; >> - } >> - >> - for (j = 0; j < driver_map[i].num_chips_ids; j++) >> - if (driver_map[i].chip_ids[j] == chip_id) { >> - driver = strdup(driver_map[i].driver); >> - _gbm_log("pci id for %d: %04x:%04x, driver %s", >> - fd, vendor_id, chip_id, driver); >> - goto out; >> - } >> - } >> - >> -out: >> - udev_device_unref(device); >> - udev_unref(udev); >> - >> - return driver; >> -} >> diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c >> index cd31221..e013980 100644 >> --- a/src/gbm/backends/dri/gbm_dri.c >> +++ b/src/gbm/backends/dri/gbm_dri.c >> @@ -44,6 +44,7 @@ >> #include "gbm_driint.h" >> >> #include "gbmint.h" >> +#include "loader.h" >> >> /* For importing wl_buffer */ >> #if HAVE_WAYLAND_PLATFORM >> @@ -271,7 +272,7 @@ dri_screen_create(struct gbm_dri_device *dri) >> const __DRIextension **extensions; >> int ret = 0; >> >> - dri->base.driver_name = dri_fd_get_driver_name(dri->base.base.fd); >> + dri->base.driver_name = loader_get_driver_for_fd(dri->base.base.fd, 0); >> if (dri->base.driver_name == NULL) >> return -1; >> >> diff --git a/src/gbm/backends/dri/gbm_driint.h >> b/src/gbm/backends/dri/gbm_driint.h >> index fb303a3..fdf694d 100644 >> --- a/src/gbm/backends/dri/gbm_driint.h >> +++ b/src/gbm/backends/dri/gbm_driint.h >> @@ -30,7 +30,6 @@ >> >> #include "gbmint.h" >> >> -#include "common.h" >> #include "common_drm.h" >> >> #include <GL/gl.h> /* dri_interface needs GL types */ >> @@ -111,7 +110,4 @@ gbm_dri_surface(struct gbm_surface *surface) >> return (struct gbm_dri_surface *) surface; >> } >> >> -char * >> -dri_fd_get_driver_name(int fd); >> - >> #endif >> diff --git a/src/gbm/main/common.c b/src/gbm/main/common.c >> deleted file mode 100644 >> index f02162d..0000000 >> --- a/src/gbm/main/common.c >> +++ /dev/null >> @@ -1,88 +0,0 @@ >> -/* >> - * Copyright © 2011 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF >> - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, >> - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> - * DEALINGS IN THE SOFTWARE. >> - * >> - * Authors: >> - * Benjamin Franzke <benjaminfran...@googlemail.com> >> - */ >> - >> -#include <stdio.h> >> -#include <string.h> >> - >> -#include <libudev.h> >> -#include <sys/types.h> >> -#include <sys/stat.h> >> -#include <unistd.h> >> - >> -#include "common.h" >> -#include "gbmint.h" >> - >> -GBM_EXPORT struct udev_device * >> -_gbm_udev_device_new_from_fd(struct udev *udev, int fd) >> -{ >> - struct udev_device *device; >> - struct stat buf; >> - >> - if (fstat(fd, &buf) < 0) { >> - fprintf(stderr, "gbm: failed to stat fd %d", fd); >> - return NULL; >> - } >> - >> - device = udev_device_new_from_devnum(udev, 'c', buf.st_rdev); >> - if (device == NULL) { >> - fprintf(stderr, >> - "gbm: could not create udev device for fd %d", fd); >> - return NULL; >> - } >> - >> - return device; >> -} >> - >> -GBM_EXPORT char * >> -_gbm_fd_get_device_name(int fd) >> -{ >> - struct udev *udev; >> - struct udev_device *device; >> - const char *const_device_name; >> - char *device_name = NULL; >> - >> - udev = udev_new(); >> - device = _gbm_udev_device_new_from_fd(udev, fd); >> - if (device == NULL) >> - return NULL; >> - >> - const_device_name = udev_device_get_devnode(device); >> - if (!const_device_name) >> - goto out; >> - device_name = strdup(const_device_name); >> - >> -out: >> - udev_device_unref(device); >> - udev_unref(udev); >> - >> - return device_name; >> -} >> - >> -GBM_EXPORT void >> -_gbm_log(const char *fmt_str, ...) >> -{ >> -} >> diff --git a/src/gbm/main/common.h b/src/gbm/main/common.h >> deleted file mode 100644 >> index 1fcdfca..0000000 >> --- a/src/gbm/main/common.h >> +++ /dev/null >> @@ -1,42 +0,0 @@ >> -/* >> - * Copyright © 2011 Intel Corporation >> - * >> - * Permission is hereby granted, free of charge, to any person obtaining a >> - * copy of this software and associated documentation files (the >> "Software"), >> - * to deal in the Software without restriction, including without limitation >> - * the rights to use, copy, modify, merge, publish, distribute, sublicense, >> - * and/or sell copies of the Software, and to permit persons to whom the >> - * Software is furnished to do so, subject to the following conditions: >> - * >> - * The above copyright notice and this permission notice (including the next >> - * paragraph) shall be included in all copies or substantial portions of the >> - * Software. >> - * >> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF >> - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, >> - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> - * DEALINGS IN THE SOFTWARE. >> - * >> - * Authors: >> - * Benjamin Franzke <benjaminfran...@googlemail.com> >> - */ >> - >> -#ifndef _COMMON_H_ >> -#define _COMMON_H_ >> - >> -#include <libudev.h> >> - >> -struct udev_device * >> -_gbm_udev_device_new_from_fd(struct udev *udev, int fd); >> - >> -char * >> -_gbm_fd_get_device_name(int fd); >> - >> -void >> -_gbm_log(const char *fmt_str, ...); >> - >> -#endif >> diff --git a/src/gbm/main/gbm.c b/src/gbm/main/gbm.c >> index c58576d..72eeabf 100644 >> --- a/src/gbm/main/gbm.c >> +++ b/src/gbm/main/gbm.c >> @@ -39,7 +39,6 @@ >> >> #include "gbm.h" >> #include "gbmint.h" >> -#include "common.h" >> #include "backend.h" >> >> #define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0])) >> -- >> 1.8.5.1 >> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev