Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

updpatch: chromium 114.0.5735.133 #2759

Merged
merged 1 commit into from
Jun 25, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 6 additions & 8 deletions chromium/riscv-base.patch
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
Index: chromium-112.0.5615.49/base/allocator/partition_allocator/partition_alloc.gni
===================================================================
--- chromium-112.0.5615.49.orig/base/allocator/partition_allocator/partition_alloc.gni
+++ chromium-112.0.5615.49/base/allocator/partition_allocator/partition_alloc.gni
@@ -14,7 +14,7 @@ if (is_apple) {
if (is_nacl) {
--- a/base/allocator/partition_allocator/partition_alloc.gni
+++ b/base/allocator/partition_allocator/partition_alloc.gni
@@ -15,7 +15,7 @@
# NaCl targets don't use 64-bit pointers.
has_64_bit_pointers = false
-} else if (current_cpu == "x64" || current_cpu == "arm64") {
+} else if (current_cpu == "x64" || current_cpu == "arm64" || current_cpu == "riscv64") {
} else if (current_cpu == "x64" || current_cpu == "arm64" ||
- current_cpu == "loong64") {
+ current_cpu == "loong64" || current_cpu == "riscv64") {
has_64_bit_pointers = true
} else if (current_cpu == "x86" || current_cpu == "arm") {
has_64_bit_pointers = false
16 changes: 13 additions & 3 deletions chromium/riscv-dav1d.patch
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Index: chromium-102.0.5005.61/third_party/dav1d/config/linux/riscv64/config.h
Index: chromium-113.0.5672.92/third_party/dav1d/config/linux/riscv64/config.h
===================================================================
--- /dev/null
+++ chromium-102.0.5005.61/third_party/dav1d/config/linux/riscv64/config.h
@@ -0,0 +1,38 @@
+++ chromium-113.0.5672.92/third_party/dav1d/config/linux/riscv64/config.h
@@ -0,0 +1,48 @@
+/*
+ * Autogenerated by the Meson build system.
+ * Do not edit, your changes will be lost.
Expand Down Expand Up @@ -34,10 +34,20 @@ Index: chromium-102.0.5005.61/third_party/dav1d/config/linux/riscv64/config.h
+
+#define HAVE_AS_FUNC 0
+
+#define HAVE_C11_GENERIC 1
+
+#define HAVE_CLOCK_GETTIME 1
+
+#define HAVE_DLSYM 1
+
+#define HAVE_GETAUXVAL 1
+
+#define HAVE_POSIX_MEMALIGN 1
+
+// #define HAVE_PTHREAD_GETAFFINITY_NP 1 -- Controlled by Chomium
+
+// #define HAVE_PTHREAD_SETAFFINITY_NP 1 -- Controlled by Chomium
+
+#define HAVE_UNISTD_H 1
+
+#define TRIM_DSP_FUNCTIONS 1
9 changes: 9 additions & 0 deletions chromium/riscv-libgav1.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
--- a/third_party/libgav1/options.gni
+++ b/third_party/libgav1/options.gni
@@ -9,5 +9,5 @@
use_libgav1_parser =
(is_chromeos || is_linux || is_win) &&
(target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm" ||
- target_cpu == "arm64" || target_cpu == "ppc64")
+ target_cpu == "arm64" || target_cpu == "ppc64" || target_cpu == "riscv64")
}
23 changes: 23 additions & 0 deletions chromium/riscv-libyuv.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
--- a/third_party/libyuv/BUILD.gn
+++ b/third_party/libyuv/BUILD.gn
@@ -32,6 +32,10 @@
if (!libyuv_use_neon) {
defines = [ "LIBYUV_DISABLE_NEON" ]
}
+
+ if (libyuv_disable_rvv) {
+ defines += [ "LIBYUV_DISABLE_RVV" ]
+ }
}

# This target is built when no specific target is specified on the command line.
--- a/third_party/libyuv/libyuv.gni
+++ b/third_party/libyuv/libyuv.gni
@@ -13,6 +13,7 @@
declare_args() {
libyuv_include_tests = !build_with_chromium
libyuv_disable_jpeg = false
+ libyuv_disable_rvv = true
libyuv_use_neon =
current_cpu == "arm64" ||
(current_cpu == "arm" && (arm_use_neon || arm_optionally_use_neon))
121 changes: 67 additions & 54 deletions chromium/riscv-sandbox.patch
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Index: chromium-111.0.5563.64/sandbox/features.gni
Index: chromium-114.0.5735.133/sandbox/features.gni
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/features.gni
+++ chromium-111.0.5563.64/sandbox/features.gni
--- chromium-114.0.5735.133.orig/sandbox/features.gni
+++ chromium-114.0.5735.133/sandbox/features.gni
@@ -9,7 +9,8 @@
use_seccomp_bpf = (is_linux || is_chromeos || is_android) &&
(current_cpu == "x86" || current_cpu == "x64" ||
Expand All @@ -12,10 +12,10 @@ Index: chromium-111.0.5563.64/sandbox/features.gni

# SSBD (Speculative Store Bypass Disable) is a mitigation of Spectre Variant 4.
# As Spectre Variant 4 can be mitigated by site isolation, opt-out SSBD on site
Index: chromium-111.0.5563.64/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
Index: chromium-114.0.5735.133/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+++ chromium-111.0.5563.64/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
--- chromium-114.0.5735.133.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
+++ chromium-114.0.5735.133/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
@@ -56,6 +56,13 @@
#define MAX_PUBLIC_SYSCALL __NR_syscalls
#define MAX_SYSCALL MAX_PUBLIC_SYSCALL
Expand All @@ -30,10 +30,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/bpf_dsl/linux_syscall_ranges.h
#else
#error "Unsupported architecture"
#endif
Index: chromium-111.0.5563.64/sandbox/linux/bpf_dsl/seccomp_macros.h
Index: chromium-114.0.5735.133/sandbox/linux/bpf_dsl/seccomp_macros.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
+++ chromium-111.0.5563.64/sandbox/linux/bpf_dsl/seccomp_macros.h
--- chromium-114.0.5735.133.orig/sandbox/linux/bpf_dsl/seccomp_macros.h
+++ chromium-114.0.5735.133/sandbox/linux/bpf_dsl/seccomp_macros.h
@@ -343,6 +343,46 @@ struct regs_struct {
#define SECCOMP_PT_PARM4(_regs) (_regs).regs[3]
#define SECCOMP_PT_PARM5(_regs) (_regs).regs[4]
Expand Down Expand Up @@ -81,10 +81,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/bpf_dsl/seccomp_macros.h
#else
#error Unsupported target platform

Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
Index: chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+++ chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
+++ chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
@@ -60,6 +60,9 @@ bool IsBaselinePolicyAllowed(int sysno)
#if defined(__mips__)
SyscallSets::IsMipsPrivate(sysno) ||
Expand Down Expand Up @@ -131,10 +131,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/baseline_policy.
if (sysno == __NR_pipe) {
return Allow();
}
Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
Index: chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+++ chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
+++ chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
@@ -37,6 +37,7 @@

#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && \
Expand All @@ -143,7 +143,7 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
!defined(PTRACE_GET_THREAD_AREA)
// Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
// the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA.
@@ -441,7 +442,7 @@ ResultExpr RestrictPtrace() {
@@ -446,7 +447,7 @@ ResultExpr RestrictPtrace() {
#endif
return Switch(request)
.Cases({
Expand All @@ -152,10 +152,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_paramete
PTRACE_GETREGS, PTRACE_GETFPREGS, PTRACE_GET_THREAD_AREA,
PTRACE_GETREGSET,
#endif
Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
Index: chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+++ chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+++ chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
@@ -103,7 +103,7 @@ bool SyscallSets::IsUmask(int sysno) {
// Both EPERM and ENOENT are valid errno unless otherwise noted in comment.
bool SyscallSets::IsFileSystem(int sysno) {
Expand Down Expand Up @@ -418,10 +418,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
bool SyscallSets::IsGoogle3Threading(int sysno) {
switch (sysno) {
case __NR_getitimer:
Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
Index: chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+++ chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
--- chromium-114.0.5735.133.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
+++ chromium-114.0.5735.133/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
@@ -52,7 +52,7 @@ class SANDBOX_EXPORT SyscallSets {
#endif

Expand Down Expand Up @@ -466,10 +466,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h
static bool IsGoogle3Threading(int sysno);
};

Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf/syscall.cc
Index: chromium-114.0.5735.133/sandbox/linux/seccomp-bpf/syscall.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/seccomp-bpf/syscall.cc
+++ chromium-111.0.5563.64/sandbox/linux/seccomp-bpf/syscall.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/seccomp-bpf/syscall.cc
+++ chromium-114.0.5735.133/sandbox/linux/seccomp-bpf/syscall.cc
@@ -18,7 +18,7 @@ namespace sandbox {
namespace {

Expand Down Expand Up @@ -527,10 +527,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/seccomp-bpf/syscall.cc
#else
#error "Unimplemented architecture"
#endif
Index: chromium-111.0.5563.64/sandbox/linux/services/credentials.cc
Index: chromium-114.0.5735.133/sandbox/linux/services/credentials.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/services/credentials.cc
+++ chromium-111.0.5563.64/sandbox/linux/services/credentials.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/services/credentials.cc
+++ chromium-114.0.5735.133/sandbox/linux/services/credentials.cc
@@ -80,7 +80,7 @@ bool ChrootToSafeEmptyDir() {
pid_t pid = -1;
alignas(16) char stack_buf[PTHREAD_STACK_MIN];
Expand All @@ -540,10 +540,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/services/credentials.cc
// The stack grows downward.
void* stack = stack_buf + sizeof(stack_buf);
#else
Index: chromium-111.0.5563.64/sandbox/linux/services/syscall_wrappers.cc
Index: chromium-114.0.5735.133/sandbox/linux/services/syscall_wrappers.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/services/syscall_wrappers.cc
+++ chromium-111.0.5563.64/sandbox/linux/services/syscall_wrappers.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/services/syscall_wrappers.cc
+++ chromium-114.0.5735.133/sandbox/linux/services/syscall_wrappers.cc
@@ -61,7 +61,7 @@ long sys_clone(unsigned long flags,
#if defined(ARCH_CPU_X86_64)
return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls);
Expand All @@ -553,10 +553,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/services/syscall_wrappers.cc
// CONFIG_CLONE_BACKWARDS defined.
return syscall(__NR_clone, flags, child_stack, ptid, tls, ctid);
#endif
Index: chromium-111.0.5563.64/sandbox/linux/syscall_broker/broker_process.cc
Index: chromium-114.0.5735.133/sandbox/linux/syscall_broker/broker_process.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/syscall_broker/broker_process.cc
+++ chromium-111.0.5563.64/sandbox/linux/syscall_broker/broker_process.cc
--- chromium-114.0.5735.133.orig/sandbox/linux/syscall_broker/broker_process.cc
+++ chromium-114.0.5735.133/sandbox/linux/syscall_broker/broker_process.cc
@@ -122,44 +122,46 @@ bool BrokerProcess::IsSyscallBrokerable(
// and are default disabled in Android. So, we should refuse to broker them
// to be consistent with the platform's restrictions.
Expand Down Expand Up @@ -629,10 +629,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/syscall_broker/broker_process.cc
case __NR_unlink:
return !fast_check || policy_->allowed_command_set.test(COMMAND_UNLINK);
#endif
Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_seccomp.h
Index: chromium-114.0.5735.133/sandbox/linux/system_headers/linux_seccomp.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/system_headers/linux_seccomp.h
+++ chromium-111.0.5563.64/sandbox/linux/system_headers/linux_seccomp.h
--- chromium-114.0.5735.133.orig/sandbox/linux/system_headers/linux_seccomp.h
+++ chromium-114.0.5735.133/sandbox/linux/system_headers/linux_seccomp.h
@@ -39,6 +39,10 @@
#define EM_AARCH64 183
#endif
Expand All @@ -655,10 +655,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_seccomp.h
// For prctl.h
#ifndef PR_SET_SECCOMP
#define PR_SET_SECCOMP 22
Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_signal.h
Index: chromium-114.0.5735.133/sandbox/linux/system_headers/linux_signal.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/system_headers/linux_signal.h
+++ chromium-111.0.5563.64/sandbox/linux/system_headers/linux_signal.h
--- chromium-114.0.5735.133.orig/sandbox/linux/system_headers/linux_signal.h
+++ chromium-114.0.5735.133/sandbox/linux/system_headers/linux_signal.h
@@ -13,7 +13,7 @@
// (not undefined, but defined different values and in different memory
// layouts). So, fill the gap here.
Expand All @@ -668,10 +668,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_signal.h

#define LINUX_SIGHUP 1
#define LINUX_SIGINT 2
Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_stat.h
Index: chromium-114.0.5735.133/sandbox/linux/system_headers/linux_stat.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/system_headers/linux_stat.h
+++ chromium-111.0.5563.64/sandbox/linux/system_headers/linux_stat.h
--- chromium-114.0.5735.133.orig/sandbox/linux/system_headers/linux_stat.h
+++ chromium-114.0.5735.133/sandbox/linux/system_headers/linux_stat.h
@@ -150,7 +150,7 @@ struct kernel_stat {
int st_blocks;
int st_pad4[14];
Expand All @@ -681,10 +681,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_stat.h
struct kernel_stat {
unsigned long st_dev;
unsigned long st_ino;
Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_syscalls.h
Index: chromium-114.0.5735.133/sandbox/linux/system_headers/linux_syscalls.h
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/linux/system_headers/linux_syscalls.h
+++ chromium-111.0.5563.64/sandbox/linux/system_headers/linux_syscalls.h
--- chromium-114.0.5735.133.orig/sandbox/linux/system_headers/linux_syscalls.h
+++ chromium-114.0.5735.133/sandbox/linux/system_headers/linux_syscalls.h
@@ -35,5 +35,9 @@
#include "sandbox/linux/system_headers/arm64_linux_syscalls.h"
#endif
Expand All @@ -695,10 +695,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/system_headers/linux_syscalls.h
+
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SYSCALLS_H_

Index: chromium-111.0.5563.64/sandbox/linux/system_headers/riscv64_linux_syscalls.h
Index: chromium-114.0.5735.133/sandbox/linux/system_headers/riscv64_linux_syscalls.h
===================================================================
--- /dev/null
+++ chromium-111.0.5563.64/sandbox/linux/system_headers/riscv64_linux_syscalls.h
+++ chromium-114.0.5735.133/sandbox/linux/system_headers/riscv64_linux_syscalls.h
@@ -0,0 +1,1222 @@
+// Copyright 2014 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
Expand Down Expand Up @@ -1922,10 +1922,10 @@ Index: chromium-111.0.5563.64/sandbox/linux/system_headers/riscv64_linux_syscall
+#endif
+
+#endif // SANDBOX_LINUX_SYSTEM_HEADERS_RISCV64_LINUX_SYSCALLS_H_
Index: chromium-111.0.5563.64/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
Index: chromium-114.0.5735.133/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+++ chromium-111.0.5563.64/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
--- chromium-114.0.5735.133.orig/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
+++ chromium-114.0.5735.133/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux.cc
@@ -38,7 +38,7 @@ ResultExpr CrosAmdGpuProcessPolicy::Eval
case __NR_sched_setscheduler:
case __NR_sysinfo:
Expand All @@ -1935,10 +1935,10 @@ Index: chromium-111.0.5563.64/sandbox/policy/linux/bpf_cros_amd_gpu_policy_linux
case __NR_readlink:
case __NR_stat:
#endif
Index: chromium-111.0.5563.64/sandbox/policy/linux/bpf_gpu_policy_linux.cc
Index: chromium-114.0.5735.133/sandbox/policy/linux/bpf_gpu_policy_linux.cc
===================================================================
--- chromium-111.0.5563.64.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+++ chromium-111.0.5563.64/sandbox/policy/linux/bpf_gpu_policy_linux.cc
--- chromium-114.0.5735.133.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
+++ chromium-114.0.5735.133/sandbox/policy/linux/bpf_gpu_policy_linux.cc
@@ -73,7 +73,7 @@ ResultExpr GpuProcessPolicy::EvaluateSys
(defined(ARCH_CPU_MIPS_FAMILY) && defined(ARCH_CPU_32_BITS))
case __NR_ftruncate64:
Expand All @@ -1948,3 +1948,16 @@ Index: chromium-111.0.5563.64/sandbox/policy/linux/bpf_gpu_policy_linux.cc
case __NR_getdents:
#endif
case __NR_getdents64:
Index: chromium-114.0.5735.133/sandbox/policy/linux/bpf_network_policy_linux.cc
===================================================================
--- chromium-114.0.5735.133.orig/sandbox/policy/linux/bpf_network_policy_linux.cc
+++ chromium-114.0.5735.133/sandbox/policy/linux/bpf_network_policy_linux.cc
@@ -235,7 +235,7 @@ ResultExpr NetworkProcessPolicy::Evaluat
case __NR_fdatasync:
case __NR_fsync:
case __NR_mremap:
-#if !defined(__aarch64__)
+#if !defined(__aarch64__) && !defined(__riscv)
case __NR_getdents:
#endif
case __NR_getdents64:
Loading