[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCH v5 0/4] isolate symbols inside libraries



Thanks Simon, Yuri,

this will go in later today.

On 09/03/2018 02:17 PM, Simon Kuenzer wrote:
Provide per lib/app namespaces

Changes since v1:
1) Remove --globalize-symbols (patch 1/3)
2) Complete (I hope) list of symbols needed to be exported to support
    current codebase. Except arm and linux userpace, which are brocken
    currently.
3) Update doccumentation

Changes since v2:
1) Export uk_sched_thread_sleep
2) Add option to specify per-lib suffix for export.syms

Changes since v3:
1) export.syms is renamed to exportsyms.uk in order to point out
    that this is a Unikraft-specific file
2) Output a warning whenever the exportsyms.uk file is missing but
    continue building. This way we can subsequently introduce required
    symbol files for each library afterwards and independently.
3) Give user the option to specify a alternative filename and path
    instead of just a suffix. This makes this scheme more flexible
    including supporting the case when symbol files are part of
    fetched archives from remote.
5) Add further missing symbols in symbol files
4) Removed symbol files from platform libs. They will get
    introduced separately after the long patch series for ARM
    
(https://lists.xenproject.org/archives/html/minios-devel/2018-08/msg00044.html)
    and linux userspace
    
(https://lists.xenproject.org/archives/html/minios-devel/2018-08/msg00120.html)
    are integrated.

Changes since v4:
1) Updated documentation
2) Added new symbols to exportsyms.uk of libnolibc

Simon Kuenzer (2):
   build: Introduce symbols exporting for each library
   lib/*: Add missing exportsyms.uk for libraries in `/lib`

Yuri Volchkov (2):
   doc: Add section about symbol exporting
   lib/*: Integrate existing lists of exported symbols

  doc/guides/developers-app.rst          | 36 ++++++++++++++++-
  doc/guides/developers-external-lib.rst |  9 +++--
  doc/guides/developers-internal-lib.rst | 25 +++++++-----
  lib/fdt/Makefile.uk                    |  3 --
  lib/fdt/exportsyms.uk                  | 62 +++++++++++++++++++++++++++++
  lib/fdt/global.syms                    | 62 -----------------------------
  lib/nolibc/exportsyms.uk               | 73 ++++++++++++++++++++++++++++++++++
  lib/ukalloc/exportsyms.uk              |  9 +++++
  lib/ukallocbbuddy/exportsyms.uk        |  2 +
  lib/ukargparse/exportsyms.uk           |  1 +
  lib/ukboot/exportsyms.uk               |  3 ++
  lib/ukbus/export.syms                  |  5 ---
  lib/ukbus/exportsyms.uk                |  5 +++
  lib/ukdebug/exportsyms.uk              |  8 ++++
  lib/uklock/export.syms                 |  2 -
  lib/uklock/exportsyms.uk               |  2 +
  lib/ukmpi/export.syms                  |  7 ----
  lib/ukmpi/exportsyms.uk                |  7 ++++
  lib/uksched/exportsyms.uk              | 15 +++++++
  lib/ukschedcoop/exportsyms.uk          |  1 +
  lib/ukswrand/export.syms               |  2 -
  lib/ukswrand/exportsyms.uk             |  2 +
  lib/uktimeconv/exportsyms.uk           |  3 ++
  lib/vfscore/export.syms                |  7 ----
  lib/vfscore/exportsyms.uk              |  7 ++++
  support/build/Makefile.rules           | 21 ++++++----
  26 files changed, 269 insertions(+), 110 deletions(-)
  create mode 100644 lib/fdt/exportsyms.uk
  delete mode 100644 lib/fdt/global.syms
  create mode 100644 lib/nolibc/exportsyms.uk
  create mode 100644 lib/ukalloc/exportsyms.uk
  create mode 100644 lib/ukallocbbuddy/exportsyms.uk
  create mode 100644 lib/ukargparse/exportsyms.uk
  create mode 100644 lib/ukboot/exportsyms.uk
  delete mode 100644 lib/ukbus/export.syms
  create mode 100644 lib/ukbus/exportsyms.uk
  create mode 100644 lib/ukdebug/exportsyms.uk
  delete mode 100644 lib/uklock/export.syms
  create mode 100644 lib/uklock/exportsyms.uk
  delete mode 100644 lib/ukmpi/export.syms
  create mode 100644 lib/ukmpi/exportsyms.uk
  create mode 100644 lib/uksched/exportsyms.uk
  create mode 100644 lib/ukschedcoop/exportsyms.uk
  delete mode 100644 lib/ukswrand/export.syms
  create mode 100644 lib/ukswrand/exportsyms.uk
  create mode 100644 lib/uktimeconv/exportsyms.uk
  delete mode 100644 lib/vfscore/export.syms
  create mode 100644 lib/vfscore/exportsyms.uk


--
Dr. Florian Schmidt
フローリアン・シュミット
Research Scientist,
Systems and Machine Learning Group
NEC Laboratories Europe
Kurfürsten-Anlage 36, D-69115 Heidelberg
Tel.     +49 (0)6221 4342-265
Fax:     +49 (0)6221 4342-155
e-mail:  florian.schmidt@xxxxxxxxx
============================================================
Registered at Amtsgericht Mannheim, Germany, HRB728558

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.